Software Engineering Manager for Android

Product Development Belgrade, Serbia


Description

SnapOne is a leading manufacturer and distributor of audio, video, surveillance, power, and wiring equipment for residential and commercial A/V integrators.  We believe that life’s better when everything works together. And the same can be said about the collaborative work we do. Join our award-winning team in our continuous quest to deliver the most brilliant, personalized smart home experiences to people around the world. 
 
The Software Engineering Manager will report to the Director of Software Engineering of Smart Device Software and will manage a team of engineers of all levels.  With your team you will evaluate and select technology and architecture that is appropriate for the desired customer experience, establish patterns, procedures and practices that enable the highest quality standards as well as will be responsible for developing mobile applications appropriate for desired customers and utilized by thousands of home automation systems. This position will help develop the Home Control Customer Interface for Android mobile apps and embedded devices (i.e. touch). This position will act as a leader and mentor for the team and therefore should be a motivated self-starter who can manage working in a fast-paced environment and manage multiple projects simultaneously. The Software Engineering Manager will work cross-functionally and should be able to manage both their team and influence other teams by leveraging their leadership skills and management techniques. This role requires the ability to effectively articulate a viewpoint and will need high attention to detail with excellent English communication and presentation skills. The Software Engineering Manager will need to demonstrate the ability to think outside the box to manage both technical and analytic challenges presented within the business and should possess exceptional problem-solving skills. 
 
Responsibilities and Duties of the Role:
 
  • Own the mission, execution, morale, and code quality of your team
  • Partner effectively with UX designers, product managers, and engineering leadership to create and execute against the product roadmap to craft best-of-class, delightful user experiences
  • Serve as a force multiplier for your team by removing roadblocks, identifying and implementing process improvements, and delegating effectively
  • Actively build community and culture throughout the engineering organization
  • Continually develop, coach, motivate, and improve your team, leading by example
  • Drive the technical direction of the codebase, CI/CD and testing infrastructure, operational metrics capabilities, and all related pieces of the software ecosystem
  • Identify areas for growth within the team and the team processes
  • Develop and implement team KPI, goals, sprint tasks and other agile workflows
  • Provide leadership, direction, mentoring, training, and encouragement to direct reports.
Required Education, Experience/Skills/Training:
 
  • Minimum of 6+ years of experience and a bachelor’s degree in computer science, software engineering or relevant field of study
  • Experience leading or managing a software engineering team
  • An understanding of the Android SDK, Activity and Fragment lifecycles, thread management, custom views
  • Knowledge of Android app architecture patterns (MVVM, MVP, etc.) and design principles
  • Experience integrating with Open Source, their related obligations, and third-party software libraries
  • Understanding and experience using reactive frameworks such as Rx-Java or Kotlin Coroutines
  • Experience with test automation, dependency injection, and continuous integration
  • Proficient with Scrum and Agile methodologies, able to create and manage stories in a backlog
  • Excellent written and spoken English language communicator who collaborates well across teams and time zones
  • Hands-on coding experience in a professional setting
  • Experience leading or managing a software engineering team 
Preferred Qualifications:
 
  • Experience building UI for embedded hardware devices (Set top boxes, appliances, auto displays)
  • 3+ years of Android software engineering management experience or direct experience mentoring and managing others